home *** CD-ROM | disk | FTP | other *** search
/ The Atari Compendium / The Atari Compendium (Toad Computers) (1994).iso / files / prgtools / programm.ing / rcs56.zoo / rcs / src / makefile < prev    next >
Encoding:
Makefile  |  1991-11-25  |  6.6 KB  |  240 lines

  1. # $Id: Makefile,v 5.16 1991/10/07 17:32:46 eggert Exp $
  2. # Copyright (C) 1982, 1988, 1989 Walter Tichy
  3. # Copyright 1990, 1991 by Paul Eggert
  4. #   Distributed under license by the Free Software Foundation, Inc.
  5. #
  6. # This file is part of RCS.
  7. #
  8. # RCS is free software; you can redistribute it and/or modify
  9. # it under the terms of the GNU General Public License as published by
  10. # the Free Software Foundation; either version 2, or (at your option)
  11. # any later version.
  12. #
  13. # RCS is distributed in the hope that it will be useful,
  14. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. # GNU General Public License for more details.
  17. #
  18. # You should have received a copy of the GNU General Public License
  19. # along with RCS; see the file COPYING.  If not, write to
  20. # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  21. #
  22. # Report problems and direct all questions to:
  23. #
  24. #    rcs-bugs@cs.purdue.edu
  25. #
  26.  
  27. # default target
  28. default :: all
  29.  
  30. # See README for more information on the configuration section.
  31. # ----- start of configuration section -----
  32.  
  33. #(Unix
  34.  
  35.  CC = cc
  36. #CC = bsdcc -qlanglvl=ansi# AIX
  37. #CC = cc -g# debug
  38. #CC = gcc -g# GCC
  39.  
  40.  CC_D =
  41.  
  42.  CC_O = -O
  43. #CC_O =# debug
  44. #CC_O = -O -R# BSD compilers that do not support `const'
  45. #CC_O = -O -fdelayed-branch -finline-functions -fomit-frame-pointer -fstrength-reduce# GCC options for brave souls
  46.  
  47.  CC_W =
  48. #CC_W = -Wall -Wcast-qual -Wpointer-arith -Wshadow -Wwrite-strings# GCC
  49.  
  50.  CFLAGS = $(CC_D) $(CC_O) $(CC_W)
  51.  
  52.  COMPAT2 = 0
  53. #COMPAT2 = 1
  54.  
  55.  DIFF = $(DIFFPREFIX)diff
  56. #DIFF = $(DIFFPREFIX)rdiff# short for ``RCS diff'' on some hosts
  57.  
  58.  DIFFPREFIX = /usr/local/gnu/# GNU diff -- must be version 1.15 or later
  59. #DIFFPREFIX = /bin/# traditional diff
  60. #DIFFPREFIX = /usr/bin/# traditional diff (alternate name)
  61.  
  62.  DIFF_FLAGS = -an# GNU diff
  63. #DIFF_FLAGS = -n# traditional diff
  64.  
  65.  DIFF_L = 1# GNU diff
  66. #DIFF_L = 0# traditional diff
  67.  
  68.  DIFF_SUCCESS = 0
  69. #DIFF_SUCCESS = EXIT_SUCCESS
  70.  DIFF_FAILURE = 1
  71. #DIFF_FAILURE = EXIT_FAILURE
  72.  DIFF_TROUBLE = 2
  73. #DIFF_TROUBLE = (EXIT_FAILURE*2)
  74.  
  75.  DIFF3 = $(DIFF)3# GNU diff3
  76. #DIFF3 = /usr/lib/diff3# traditional diff3
  77. #DIFF3 = /usr/5lib/diff3prog# other aliases for traditional diff3
  78. #DIFF3 = /usr/lib/diff3prog
  79. #DIFF3 = /usr/lib/rdiff3
  80.  
  81.  DIFF3_BIN = 1# GNU diff
  82. #DIFF3_BIN = 0# traditional diff
  83.  
  84.  ED = /bin/ed
  85.  
  86.  EXECUTABLE_GROUP = staff# BSD unix installation
  87.  EXECUTABLE_PERMISSIONS = -g $(EXECUTABLE_GROUP) -m 775# BSD unix installation
  88.  INSTALL = install -c $(EXECUTABLE_PERMISSIONS)# BSD unix installation
  89. #INSTALL = cp# traditional Unix installation
  90.  
  91.  LDFLAGS =
  92.  
  93.  LDLIBS =
  94.  
  95.  LINK = $(CC) $(LDFLAGS)
  96.  
  97.  LINT = lint -abchx# traditional and BSD lint
  98. #LINT = lint# System V lint
  99.  
  100.  MAKE = make
  101.  
  102.  OTHER_OBJECT =
  103.  
  104.  RCSDIR = /usr/local/bin
  105. #RCSDIR = /bin
  106. #RCSDIR = /usr/bin
  107.  
  108.  RCSPREFIX = $(RCSDIR)/
  109. #RCSPREFIX =
  110.  
  111.  REMOVE = rm -f
  112.  
  113.  SENDMAIL = "/bin/mail"
  114. #SENDMAIL = "/etc/delivermail", "-w"
  115. #SENDMAIL = "/usr/bin/mail"
  116. #SENDMAIL = "/usr/lib/sendmail"
  117. #SENDMAIL = "mail"
  118. #SENDMAIL =# for impoverished hosts that lack electronic mail
  119.  
  120.  TESTPREFIX =
  121.  
  122.  o = .o
  123. #o = .s# Minix/PC with ACK cc
  124.  
  125.  x =
  126.  
  127. #)
  128. # On non-Unix hosts you must manually create and edit conf.h from conf.heg.
  129.  
  130. # ----- end of configuration section -----
  131. # You shouldn't have to change anything past this point.
  132.  
  133.  
  134. # Avoid brain damage in some versions of 'make'.
  135. SHELL = /bin/sh
  136.  
  137. # all commands
  138. RCSCOMMANDS = ci$x co$x ident$x merge$x rcs$x rcsdiff$x rcsmerge$x rlog$x
  139.  
  140. all :: $(RCSCOMMANDS)
  141.  
  142. install :: all
  143.     $(INSTALL) ci$x $(DESTDIR)$(RCSDIR)
  144.     $(INSTALL) co$x $(DESTDIR)$(RCSDIR)
  145.     $(INSTALL) ident$x $(DESTDIR)$(RCSDIR)
  146.     $(INSTALL) merge$x $(DESTDIR)$(RCSDIR)
  147.     $(INSTALL) rcs$x $(DESTDIR)$(RCSDIR)
  148.     $(INSTALL) rcsdiff$x $(DESTDIR)$(RCSDIR)
  149.     $(INSTALL) rcsmerge$x $(DESTDIR)$(RCSDIR)
  150.     $(INSTALL) rlog$x $(DESTDIR)$(RCSDIR)
  151.  
  152. # Install RCS and (if applicable) GNU diff before running these tests.
  153. # To test RCS before installing it, see README.
  154. RCSTEST = PATH=$(RCSDIR):$(DIFFPREFIX).:$$PATH sh $(TESTPREFIX)rcstest
  155. installtest ::
  156.     $(RCSTEST)
  157. installdebug ::
  158.     $(RCSTEST) -v
  159.  
  160. clean ::
  161.     $(REMOVE) a.* *$o conf.h conf.error $(RCSCOMMANDS) rcsclean$x
  162.  
  163. #(Unix
  164. conf.h : conf.sh Makefile
  165.     $(REMOVE) a.*
  166.     CC='$(CC)' CFLAGS='$(CFLAGS)' \
  167.     COMPAT2='$(COMPAT2)' \
  168.     DIFF3='$(DIFF3)' DIFF3_BIN='$(DIFF3_BIN)' \
  169.     DIFF='$(DIFF)' DIFF_FLAGS='$(DIFF_FLAGS)' DIFF_L='$(DIFF_L)' \
  170.     DIFF_SUCCESS='$(DIFF_SUCCESS)' DIFF_FAILURE='$(DIFF_FAILURE)' DIFF_TROUBLE='$(DIFF_TROUBLE)' \
  171.     ED='$(ED)' \
  172.     LDFLAGS='$(LDFLAGS)' LDLIBS='$(LDLIBS)' \
  173.     RCSPREFIX='$(RCSPREFIX)' \
  174.     SENDMAIL='$(SENDMAIL)' \
  175.     sh -x conf.sh >a.h 2>conf.error
  176.     mv a.h $@
  177.     $(REMOVE) a.*
  178. #)
  179.  
  180. ci = ci$o rcslex$o rcssyn$o rcsgen$o rcsedit$o rcskeys$o rcsmap$o \
  181.     rcsrev$o rcsutil$o rcsfnms$o partime$o maketime$o rcskeep$o \
  182.     rcsfcmp$o $(OTHER_OBJECT)
  183. ci$x : $(ci)
  184.     $(LINK) $(ci) $(LDLIBS) -o $@
  185.  
  186. co = co$o rcslex$o rcssyn$o rcsgen$o rcsedit$o rcskeys$o rcsmap$o \
  187.     rcsrev$o rcsutil$o rcsfnms$o partime$o maketime$o rcskeep$o $(OTHER_OBJECT)
  188. co$x : $(co)
  189.     $(LINK) $(co) $(LDLIBS) -o $@
  190.  
  191. ident = ident$o rcsmap$o $(OTHER_OBJECT)
  192. ident$x : $(ident)
  193.     $(LINK) $(ident) $(LDLIBS) -o $@
  194.  
  195. merge = merge$o merger$o rcsfnms$o rcslex$o \
  196.     rcsmap$o rcsrev$o rcssyn$o rcsutil$o \
  197.     rcskeep$o rcskeys$o $(OTHER_OBJECT)
  198. merge$x : $(merge)
  199.     $(LINK) $(merge) $(LDLIBS) -o $@
  200.  
  201. rlog = rlog$o rcslex$o rcsmap$o rcssyn$o rcsrev$o rcsutil$o partime$o \
  202.     maketime$o rcsfnms$o rcskeep$o rcskeys$o $(OTHER_OBJECT)
  203. rlog$x : $(rlog)
  204.     $(LINK) $(rlog) $(LDLIBS) -o $@
  205.  
  206. rcs = rcs$o rcslex$o rcssyn$o rcsrev$o rcsutil$o rcsgen$o rcsedit$o rcskeys$o \
  207.     rcsmap$o rcsfnms$o rcskeep$o $(OTHER_OBJECT)
  208. rcs$x : $(rcs)
  209.     $(LINK) $(rcs) $(LDLIBS) -o $@
  210.  
  211. rcsclean = rcsclean$o rcsedit$o rcsfcmp$o rcsfnms$o rcsgen$o rcskeys$o \
  212.     rcslex$o rcsmap$o rcsrev$o rcssyn$o rcsutil$o rcskeep$o $(OTHER_OBJECT)
  213. rcsclean$x : $(rcsclean)
  214.     $(LINK) $(rcsclean) $(LDLIBS) -o $@
  215.  
  216. rcsdiff = rcsdiff$o rcsutil$o rcsfnms$o rcsmap$o rcsrev$o rcssyn$o rcslex$o \
  217.     maketime$o partime$o rcskeep$o rcskeys$o $(OTHER_OBJECT)
  218. rcsdiff$x : $(rcsdiff)
  219.     $(LINK) $(rcsdiff) $(LDLIBS) -o $@
  220.  
  221. rcsmerge = rcsmerge$o merger$o rcsutil$o rcsfnms$o rcsmap$o rcsrev$o rcssyn$o \
  222.     rcslex$o rcskeep$o rcskeys$o $(OTHER_OBJECT)
  223. rcsmerge$x : $(rcsmerge)
  224.     $(LINK) $(rcsmerge) $(LDLIBS) -o $@
  225.  
  226. SOURCE=    ci.c co.c ident.c maketime.c merge.c merger.c partime.c rcs.c \
  227.     rcsclean.c rcsdiff.c rcsedit.c rcsfcmp.c rcsfnms.c rcsgen.c \
  228.     rcskeep.c rcskeys.c rcslex.c rcsmap.c rcsmerge.c rcsrev.c rcssyn.c \
  229.     rcsutil.c rlog.c
  230. OBJECT=    ci$o co$o ident$o maketime$o merge$o merger$o partime$o rcs$o \
  231.     rcsclean$o rcsdiff$o rcsedit$o rcsfcmp$o rcsfnms$o rcsgen$o \
  232.     rcskeep$o rcskeys$o rcslex$o rcsmap$o rcsmerge$o rcsrev$o rcssyn$o \
  233.     rcsutil$o rlog$o
  234.  
  235. lint :: conf.h
  236.     $(LINT) $(CC_D) -Dlint=1 $(SOURCE)
  237.  
  238. conf_h = conf.h
  239. $(OBJECT) : $(conf_h) rcsbase.h
  240.